home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / ARGONET / SOFTROCK / PD / IRCLIB.ARC / Instructs next >
Text File  |  1997-01-29  |  10KB  |  283 lines

  1.  
  2. IRCLib for !IRClient V0.22
  3. ==========================
  4.  
  5. V0.18b - 29/1/96
  6.  
  7. This program was originally written by Matthew Godbolt, and this version has
  8. had a number of changes made by me. Thanks are due to Matthew for allowing
  9. me to make available what started out as (and remains, largely) his code.
  10.  
  11.  
  12. The program IRCLib should be placed inside !IRClient.Scripts (after first
  13. copying the one that was already there somewhere else as a backup).
  14.  
  15.  
  16. The following have been added, changed and/or fixed.
  17.  
  18.  
  19.  
  20.  
  21. Flood Protection
  22.  
  23. Important: The CTCP aspect of the flood protection has been tested. The /NAMES
  24.            aspect has not. It /should/ work, in theory.
  25.  
  26. A degree of flood protection has been added. This has been done by placing a
  27. time limit of 2 seconds (default) on CTCP replies, and /NAMES commands - it will
  28. ignore all CTCP commands received (that require replies - so ACTIONS still work)
  29. that are received until 2 seconds has elapsed since the last reply was sent, and
  30. will not send /NAMES commands according to the same time limit. (NAMES is used
  31. to update the users window during nick changes, so rapid nick changes can result
  32. in flooding.)
  33.  
  34. This was added hurredly, as a result of being flooded several times, so
  35. could easily be improved on. However, as it stands it /does/ work, and has
  36. been made available for that reason.
  37.  
  38. One drawback with this is that if you receive /valid/ ctcp requests (pings
  39. from other IRCers to see if you are lagging, for example) and they reach
  40. you too close together, only the first will be replied to.
  41.  
  42. Note: The protection offered for /NAMES will not work correctly if you are on
  43.       more than one channel, if the flooding is being carried out on more than
  44.       one /of/ those channels. It should work if you are on more than one channel,
  45.       but flooding is only happening on one.
  46.  
  47.       As stated above, this part of the protection is untested, but what I expect
  48.       to happen, if you are on more than one channel being flooded in this way,
  49.       is that the users window will be updated (read fixed) on one but not the
  50.       other. If I'm right, issuing a manual /NAMES #chan for the channel that
  51.       hasn't been updated should fix it.
  52.        
  53.  
  54.  
  55. /SERVER
  56.  
  57. To see messages as received from the server (which will largely be a duplication
  58. of what you see anyway, but in a different format) you can use /SERVER ON. All
  59. these messages will now appear in the server window. To switch this function off
  60. once more, use /SERVER OFF.
  61.  
  62.  
  63.  
  64. /SPEAK
  65.  
  66. A limited support for Jonathan Duddington's !Speak has been added. Using this,
  67. you can arrange to have all text from any one IRCer synthesised into speech.
  68. As with the flood protection, above, this is a far from perfect implementation.
  69. This is because I only added it to try it out. I've never removed, or completed
  70. it.
  71.  
  72. Use /SPEAK nick to begin speaking all text from nick, and /SPEAK nick to
  73. cancel. /SPEAK with no parameters will display the nick you currently have this
  74. set for. Only one person's speech is synthesised at any one time in this
  75. implementation.
  76.  
  77.          eg      /SPEAK VinceH      will result in everything you receive
  78.                                     from me being spoken.
  79.                  /SPEAK HLander     will change the speaker to HLander
  80.                  /SPEAK             will tell you that HLander is the current
  81.                                     speaker
  82.          and     /SPEAK HLander     will stop all speech.
  83.  
  84.  
  85. WARNING: As stated above, this isn't a proper implementation. To use it, you
  86. must load the relevant part of !Speak beforehand. This IRCLib doesn't register
  87. itself with the module. If you use another program that utilises !Speak, when
  88. you quit that application, you will start getting error messages from IRCLib,
  89. because the speak module will quit itself. So, if you load one or more apps that
  90. use !Speak, leave one of them loaded to prevent this problem.
  91.  
  92.  
  93.  
  94.  
  95. /AWAY
  96.  
  97. This command marks you as away, so that whenever someone types /WHOIS yournick
  98. one of the lines that appears in the results will show you as away. This line
  99. will also be passed to anyone who /MSGs you.
  100.  
  101. In this version, it will also declare to the current channel that you are away
  102. (and back, when appropriate).
  103.  
  104. Use /AWAY reason to mark yourself as away, and /AWAY on its own to return.
  105.  
  106.           eg:       if I typed      /AWAY getting a drink
  107. it will show: (on the channel)      *VinceH is getting a drink - be back soon
  108.                  (in my whois)      *VinceH is away: getting a drink
  109.               (as a msg reply)      *VinceH is away: getting a drink
  110.                if I then typed      /AWAY
  111. it will show: (on the channel)      *VinceH is back
  112.               and the /WHOIS and /MSG lines will be removed.
  113.  
  114.  
  115.  
  116. /IGNORE
  117.  
  118. This command allows you to ignore all comments and msg's from particular ppl.
  119. Anything they say on any channels you are on, and anything they /MSG you will
  120. not be displayed on your screen. They will also not get any CTCP replies from
  121. you.
  122.  
  123. Use /IGNORE nickname to ignore someone, and /IGNORE nickname (again) to hear
  124. them oce more. /IGNORE with no nicknames will tell you who you are ignoring.
  125. Whenever you use /IGNORE the list of ignored nicks will appear in your
  126. current channel window.
  127.  
  128.           eg:  /IGNORE Pest  - will ignore Pest
  129.                /IGNORE       - will tell me I'm ignoring Pest
  130.                /IGNORE Pest  - will stop me ignoring Pest
  131.  
  132.  
  133. /MODE
  134.  
  135. This is the channel mode change command. You can now use it to make changes
  136. to the channel mode - that do *NOT* need any additional parameters. ie, you
  137. can make the channel moderated (+m) or not (-m), invitation only (+i) or not
  138. (-i), secret (+s) or not (-s), chanops can change the topic only (+t) or not
  139. (-t), or disable external messages to the channel (+n) or not (-n)
  140.  
  141. Note: You need to be a channel operator (chanop) to use this command.
  142.  
  143.           eg:  /MODE +t  - will mean only chanops can change the topic.
  144.                /MODE -t  - will allow anyone to do so.
  145.  
  146. Mode commands that need parameters (eg making someone a chanop) have had
  147. alternative (and easier to remember commands) provided.
  148.  
  149.  
  150. /NAMES
  151.  
  152. This will provide you with a list of nicknames on the specified channel.
  153.  
  154. Use /NAMES #channel to see who is there.
  155.  
  156.           eg: /NAMES #Argonet - might get you the following result:-
  157.               *** on channel #Argonet are @VinceH, @Lottie, @Jawkins
  158.  
  159. /NICK
  160.  
  161. This command enables you to change your nickname while on IRC.
  162.  
  163. Use /NICK newnick to change your nickname to the one specified.
  164.  
  165.           eg:   if I typed   /NICK McCleod
  166.                 I'd see      *** you are now known as McCleod
  167.  
  168. and from then on, McCleod would be my nickname, rather than VinceH
  169.  
  170.  
  171. /NOTIFY
  172.  
  173. This command provides a way of knowing when certain people arrive on IRC.
  174. It performs a /WHOIS, cycling through a list of names, until the result
  175. is that the person is on IRC.
  176.  
  177. Use /NOTIFY nickname to add that person to your list of ppl to look out
  178. for. /NOTIFY nickname a second time will remove that person, and /NOTIFY
  179. on its own will tell you who you have on the list.
  180.  
  181. Note: Once the person arrives on IRC they are automatically removed from
  182. the list.
  183.  
  184.           eg:   if I typed   /NOTIFY Lottie - I'd be notified of Lottie's
  185.                                               arrival on IRC.
  186.                              /NOTIFY Xina   - and I'd by notified of both
  187.                                               Lottie and Xina's arrival.
  188.  
  189. If Lottie arrived, a message like...
  190. >>> Lottie has arrived on IRC
  191. ...will be displayed, and Lottie would be taken off the list. And so on.
  192.  
  193. This command is not without its problems, however.
  194.  
  195. First of all, it only sends out the whois command when the script receives
  196. something to display. So if you are on silent channels, and are receiving
  197. no messages, it quite simply won't work.
  198.  
  199. Secondly, on a very busy channel, you may find that following someone's
  200. arrival you suddenly get a long chain of Whois results for that person.
  201. This is particularly noticeable if they arrive while you have lag.
  202.  
  203. Thirdly, remember that the command *cycles* through the names, and only
  204. checks one each time the routne is called - so the longer the list (and
  205. the quieter the channel) the more likely the person is to arrive on
  206. your channel *before* the script tells you they're on IRC. Stick to
  207. short lists, unless on a very busy channel - in which case, make it a
  208. long list, which will help avoid the second problem, above.
  209.  
  210.  
  211.  
  212. All the following commands are the equivalent of various /MODE commands
  213. that require parameters. Do *not* attempt to use the /MODE version, use
  214. these instead:-
  215.  
  216. (Sorry the instructions are a little brief from this point onwards, but
  217. time is against me.)
  218.           
  219. /OP
  220.  
  221. Is used to make someone a channel operator.
  222.  
  223. Use /OP nickname
  224. or  /OP nickname1,nickname2,etc
  225.  
  226.  
  227. /DEOP
  228.  
  229. Is used to take chanop status away from someone
  230.  
  231. Use /DEOP nickname
  232. or  /DEOP nickname1,nickname2,etc
  233.  
  234.  
  235. /BAN
  236.  
  237. Is used to ban someone from a channel.
  238.  
  239. Use /BAN mask (which is usually a based on the IP address, shown when
  240.               you /whois someone, or when they join and leave a chan.)
  241.  
  242. eg  /BAN *@aj108.du.pipex.com
  243.  
  244.  
  245. /UNBAN
  246.  
  247. Is used to lift a ban set by the above.
  248.  
  249. Use /UNBAN mask
  250.  
  251.  
  252. /LIMIT
  253.  
  254. Is used to limit the number of ppl on a channel. If you limit a channel to
  255. 10 ppl for example, you will not be able to have more than that number
  256. present.
  257.  
  258. Use /LIMIT number to set the limit to that number, and /LIMIT on its own to
  259. remove the limit.
  260.  
  261.  
  262. /KEY
  263.  
  264. Is used to add and remove a key (password) for the channel.
  265.  
  266. Use /KEY word to add a password, and /KEY -word to remove that password.
  267.  
  268.  
  269. I hope you find this altered IRCLib useful. Please email me if you have any
  270. comments or suggestions...
  271.  
  272. vince.mh@argonet.co.uk
  273.  
  274. VinceH on IRC, usually on #Argonet at varying times, but mostly between 10 &
  275. 12 pm.
  276.  
  277. Vince M. Hudd
  278.  
  279.  
  280.  
  281.  
  282.  
  283.